package com.itlong.cloud.utils.node;

import java.util.HashSet;
import java.util.Set;

/**
 * <desc>
 *      Set集合处理工具类。
 * </desc>
 *
 * @createDate 2017/11/28
 */
public class SetListUtil {

    /**
     * <desc>
     *      对比获取两个set不同的元素
     * <desc/>
     * @param oldSet 旧Set集合
     * @param newSet 新Set集合
     * @return  新旧Set集合的差集
     * @author Biao.R
     * @createDate 2017/9/26
     */
    public static Set<String> getDiffSet(Set<String> oldSet, Set<String> newSet) {
        Set<String> diffSet = new HashSet<>();
        diffSet.addAll(newSet);
        diffSet.addAll(oldSet);
        newSet.retainAll(oldSet);
        diffSet.removeAll(newSet);
        return diffSet;
    }

    /**
     * <desc>
     *      第一个集合元素删除两个集合的并集元素
     * </desc>
     *
     * @param setOne
     * @param setTwo
     * @createDate  2019/12/17
     */
    public static Set<String> getDiffSetByFirst(Set<String> setOne,Set<String> setTwo){
        Set<String> diffSet = new HashSet<>();
        diffSet.addAll(setOne);
        setOne.retainAll(setTwo);
        diffSet.removeAll(setOne);
        return diffSet;
    }
}
